const express = require('express')

const router = express.Router()

// 导入BookModel
const BookModel = require('../models/bookModel')

// 注册路由

// 图书列表
router.get('/list', (req,res)=>{
  BookModel.find((error , data)=>{
    if(error){
      res.render('book/error' , {errorMsg:'获取失败'})
    }else{
      res.render('book/list', {books:data})
    }
  })
})


// 修改页面路由
router.get('/toUpdate/:id' ,(req,res)=>{
  const {id} = req.params
  BookModel.findById(id,(error,data)=>{
    if(error){
      res.render('book/error' , {errorMsg:'获取失败'})
    }else{
      res.render('book/addOrUpdate', {book:data})
    }
  })
})


// 添加页面路由
router.get('/toApp', (req,res)=>{
  // 定义book结构
  const book ={
    name: '',
    author: '',
    price: 0
  }
  res.render('book/addOrUpdate', {book})
})


// 添加图书
router.post('/update', (req,res)=>{
  const book = req.body
  BookModel.updateOne({_id:book._id}, book, (error,data)=>{
    if(error){
      res.render('book/error', {errorMsg: '修改图书失败'})
    }else{
      // 重定向去 首页
      res.redirect('/book/list')
    }
  })
})


// 删除图书
router.get('/remove/:id', (req,res)=>{
  const {id} = req.params
  BookModel.deleteOne({_id:id} , (error,data)=>{
    if (error) {
      res.render('book/error', {errorMsg: '删除图书失败'})
    } else { // 重定向: /book/list
      res.redirect('/book/list')
    }
  })
})



// 导出路由
module.exports = router
